package com.xinzhidi.web.dataManagement.mapper;

import com.xinzhidi.web.dataManagement.domain.bo.FiledControl;
import com.xinzhidi.web.dataManagement.domain.po.DataManagementPo;
import com.xinzhidi.web.dataManagement.domain.vo.DataManagementVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 数据管理Mapper接口
 *
 * @author ruoyi
 * @date 2023-05-29
 */
public interface DataManagementMapper {


    /**
     * 单元-热量表详细数据查询
     *
     * @param po 查询条件
     * @return 列表
     */
    List<DataManagementVo> listHeatBuildUnit(DataManagementPo po);

    /**
     * 楼栋-热量表详细数据查询
     *
     * @param po 查询条件
     * @return 列表
     */
    List<DataManagementVo> listHeatBuild(DataManagementPo po);

    /**
     * 楼栋-阀门详细数据查询
     *
     * @param po 查询条件
     * @return 列表
     */
    List<DataManagementVo> listValveBuild(DataManagementPo po);

    /**
     * 楼栋-室温详细数据查询
     *
     * @param po 查询条件
     * @return 列表
     */
    List<DataManagementVo> listRoomTemperatureBuildUnit(DataManagementPo po);

    /**
     * 单元-热量表详细数据查询
     *
     * @param po 查询条件
     * @return 列表
     */
    List<DataManagementVo> listHeatUnit(DataManagementPo po);

    /**
     * 单元-阀门详细数据查询
     *
     * @param po 查询条件
     * @return 列表
     */
    List<DataManagementVo> listValveUnit(DataManagementPo po);

    /**
     * 住户-热量表详细数据查询
     *
     * @param po 查询条件
     * @return 列表
     */
    List<DataManagementVo> listHeatHousehold(DataManagementPo po);

    /**
     * 住户-阀门详细数据查询
     *
     * @param po 查询条件
     * @return 列表
     */
    List<DataManagementVo> listValveHousehold(DataManagementPo po);

    /**
     * 住户-室温详细数据查询
     *
     * @param po 查询条件
     * @return 列表
     */
    List<DataManagementVo> listTemperatureHousehold(DataManagementPo po);


    /**
     * 单元-详细数据查询
     *
     * @param po 查询条件
     * @return 列表
     */
//    List<DataManagementVo> listBuildUnit(DataManagementPo po);

    /**
     * 住户-详细数据查询
     *
     * @param po 查询条件
     * @return 列表
     */
    List<DataManagementVo> listHousehold(DataManagementPo po);

    void delete(FiledControl filedControl);

    void insert(@Param("list")List<FiledControl> list);

    List<FiledControl> fieldControlList(FiledControl list);

    List<DataManagementVo> listRoomTemperatureUnit(DataManagementPo po);

    List<DataManagementVo> listRoomTemperatureBuild(DataManagementPo po);


}
